package com.sinosoft.mapper;

import java.util.List;

import com.sinosoft.entity.DefRole;
import com.sinosoft.entity.DefUser;

public interface DefRoleMapper {

	/**
	 * 根据角色ID查询角色信息。
	 * @param roleId
	 * @return
	 */
    DefRole selectById(Long roleId);
    
    /**
     * 根据用户ID、Code查询角色信息
     * @param user
     * @return
     */
    List<DefRole> selectByUser(DefUser user);
    /**
	 * 根据条件查询用户信息。<br>
	 * 若想分页查询，则需要同时设置start和rows的值。<br>
	 * start表示分页查询时的查询起点；<br>
	 * rows表示分页查询时的每页展示条数。
	 * @param defUser
	 * @return
	 */
    List<DefRole> selectByCondition(DefRole defUser);
    
    /**
     * 查询总条数（分页查询时使用，入参要相同的查询条件）
     * @param defUser
     * @return
     */
    Integer selectByConditionCount(DefRole defUser);

    /**
     * 添加角色
     * @param role
     * @return
     */
    Integer roleAdd(DefRole role);
    
    /**
     * 修改角色
     * @param role
     * @return
     */
    Integer roleModify(DefRole role);
    
    /**
     * 根据角色ID删除角色
     * @param roleId
     * @return
     */
    Integer roleDelete(Long roleId);
}